/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.model.core;

import br.com.biblioteca.dba.GenericDao;
import br.com.biblioteca.dba.HibernateUtil;
import br.com.model.entity.Produto;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;

public class ProdutoDao extends GenericDao {

    private Session session = getSession();

    private List executeHQLQuery(String hql) {
        try {
            session = open();
            List resultList = session.createQuery(hql).list();
            commit();
            return resultList;
        } catch (HibernateException he) {
            he.printStackTrace();
            return null;
        }
    }

    public List<Produto> listarProduto(String descricao) {
        List<Produto> produtos = executeHQLQuery("from Produto  where categoria = '" + descricao + "'");
        return produtos;
    }

    public List<Produto> buscarProduto(String inicio) {
        List<Produto> produtos = executeHQLQuery("from Produto a where a.categoria like " + inicio + '%');
        return produtos;
    }
}
